The present invention relates to image enhancement.
The HSV (hue, saturation, value), or HSB (hue, saturation, brightness) model of the color space model facilitates a more intuitive modification of the colors of an image than changing the colors of an image based directly upon the modification of three primary colors model, i.e. R, G, and B. The RGB color space has the shape of a cube while the HSV color space has the shape of a hexagonal cone. The HSV cone is a non-linear transformation of the RGB cube and at times it is referred to as a perceptual model. ‘Perceptual’ means the attributes that are more akin to the way in which human-beings think of color.
HSV model facilitates modification of the range or gamut of an RGB display device using the perceptually based variables, i.e. hue, saturation and value/brightness. The HSV model is based on polar coordinates (r, e, z) rather than Cartesians coordinates used in the RGB model. Hue or tint, is represented as an angle about the z axis, ranging from 0° through 360°. Vertices of the hexagon are separated by 60° increment. Red is at H=0°, Yellow at H=60′, Green at H=120′, Cyan at H=180′, Blue at H=240′, and Magenta at H=300′. Complementary colors are 180° spaced apart from each other. Distance from the z axis represents saturation (S): the amount of color present. S typically varies from 0 to 1. It is represented in this model as the ratio of the purity of a hue. S=1 represents maximum purity of this hue. A hue is said to be one-quarter purity at S=0.25. At S=0, the gray scale is resulted. V, value of HSV, varies from 0 at the apex of the hexcone to 1 at the bottom of the hexcone. V=0 represents blackness. With V=1, color has his maximum intensity. When V=1 and S=1, we have the pure hue. Whiteness is obtained at the location of V=1 and S=0. Other color spaces have similar behavior and include YCbCr and LAB, in which the color place is Cartesian separable rather than polar separable.
Most existing current color enhancement techniques typically boosts saturation of colors while keeping the colors' hue substantially unchanged. In the hue-saturation color wheel such as the one shown in FIG. 1, a typical color enhancement technique moves colors outward on the radial direction as shown by the arrows. Essentially, the color enhancement algorithm increases the input images' color gamut by increasing the saturation of the pixels. The term “color gamut” can also be used to describe the available image of colors capable of being displayed by a given display. The color is determined by the display's primaries.
The techniques used to enhance the color enhancement of an image are based upon modification of individual pixels. When the color of a pixel is enhanced to a new color, the conversion from the old color to the new color for each pixel is a predetermined fixed adjustment for the entire image or for the entire video.
By way of example, televisions have built-in color enhancement techniques to enhance unsaturated colors in certain content and let viewers set their color preferences. Because the human eye is very sensitive to the skin color, it is important for a color enhancement technique to render skin colors properly. It is also desirable for a color enhancement technique to separately adjust skin colors and non-skin colors using different characteristics.
Some color enhancement techniques have the capability of protecting skin colors. These techniques are typically are pixel-based. When the color of a pixel is enhanced to a new color, the conversion from the old color to the new color is fixed, and is not affected by other pixels. Because pixel-based color enhancement techniques with skin color protection cannot overcome the issue that the colors of skin and non-skin are highly overlapped, these techniques cannot effectively separately enhance skin and non-skin, and thus they can only protect all skin colors in the image not to be enhanced.
The pixel-based algorithms do not work effectively. Specifically, to avoid generating visible contouring artifacts in the areas of an image where skin and neighboring non-skin colors are mixed, both the skin color region in the color space and the gradual transition region between the skin color region and the non-skin color region have to be set very wide. Typically, the skin color and transition regions cover nearly half of the color gamut, as illustrated in FIG. 2. On the other hand, some true skin colors are missed in the skin color region and therefore remain unprotected. Consequently, many non-skin colors are improperly protected while many skin colors are improperly enhanced by the enhancement techniques.